package com.wxxymaker.edu.model.entity;

import com.blade.kit.EncryptKit;
import com.wxxymaker.edu.utils.Const;
import io.github.biezhi.anima.Model;
import io.github.biezhi.anima.annotation.Ignore;
import io.github.biezhi.anima.annotation.Table;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;

/**
 * @AUTHOR soft
 * @DATE 2018/8/20 8:25
 * @DESCRIBE 用户实体类
 */
@EqualsAndHashCode(callSuper = false)
@Data
@Table(name = "user")
@ToString
@NoArgsConstructor
public class User extends Model {

    public User(Integer role, Integer audit) {
        this.role = role;
        this.audit = audit;
    }

    private Integer id;
    private String username;
    private String password;

    private String regTime;   // 注册时间
    private String loginTime; // 最后登录时间

    private Integer role;      // 角色  1 学生，2 老师，3 管理员

    private Integer audit;     //审核状态，0：未通过，1：通过

    @Ignore
    private Boolean remember;

    private String icon;  // 头像
    private String name;  // 真实姓名
    private Integer sex;   // 性别 0男 1女
    private String intro; // 简介
    private String title; // 头衔
    private String sign;  // 签名
    //    private String firm;  // 公司
//    private String job;   // 职业
    private String zero;  // 空间
    //    private String WB;    // 微博
    private String email;    // QQ邮箱
    //    private String WX;    // WX
    private String tel;



    public String getMd5Pass() {
        return this.md5(this.password);
    }

    public boolean equalsPass(String password) {
        return this.getPassword().equals(this.md5(password));
    }

    private String md5(String ps) {
        return EncryptKit.md5(ps, Const.salt);
    }
}